//package com.sky.config;
//
//import com.github.wxpay.sdk.WXPayConfig;
//import java.io.ByteArrayInputStream;
//import java.io.File;
//import java.io.FileInputStream;
//import java.io.InputStream;
//
///**
// * 微信支付自定义配置类
// * 实现WXPayConfig接口，加载商户配置信息
// */
//public class MyWXPayConfig implements WXPayConfig {
//
//    // 商户号
//    private String mchId;
//
//    // 商户API密钥
//    private String apiKey;
//
//    // 公众号APPID
//    private String appId;
//
//    // 证书输入流
//    private InputStream certStream;
//
//    // 超时时间，单位毫秒
//    private int timeout = 5000;
//
//    /**
//     * 构造方法，初始化配置信息
//     * @param appId 公众号APPID
//     * @param mchId 商户号
//     * @param apiKey 商户API密钥
//     * @param certPath 证书路径
//     */
//    public MyWXPayConfig(String appId, String mchId, String apiKey, String certPath) {
//        this.appId = appId;
//        this.mchId = mchId;
//        this.apiKey = apiKey;
//        this.certStream = getCertStream(certPath);
//    }
//
//    /**
//     * 获取证书输入流
//     * @param certPath 证书路径
//     * @return 证书输入流
//     */
//    private InputStream getCertStream(String certPath) {
//        try {
//            File file = new File(certPath);
//            FileInputStream fis = new FileInputStream(file);
//            byte[] certData = new byte[(int) file.length()];
//            fis.read(certData);
//            fis.close();
//            return new ByteArrayInputStream(certData);
//        } catch (Exception e) {
//            System.err.println("获取证书失败：" + e.getMessage());
//            return null;
//        }
//    }
//
//    @Override
//    public String getAppID() {
//        return appId;
//    }
//
//    @Override
//    public String getMchID() {
//        return mchId;
//    }
//
//    @Override
//    public String getKey() {
//        return apiKey;
//    }
//
//    @Override
//    public InputStream getCertStream() {
//        return certStream;
//    }
//
//    @Override
//    public int getHttpConnectTimeoutMs() {
//        return timeout;
//    }
//
//    @Override
//    public int getHttpReadTimeoutMs() {
//        return timeout;
//    }
//
//    /**
//     * 设置超时时间
//     * @param timeout 超时时间，单位毫秒
//     */
//    public void setTimeout(int timeout) {
//        this.timeout = timeout;
//    }
//}
